home *** CD-ROM | disk | FTP | other *** search
Makefile | 1993-12-02 | 4.7 KB | 148 lines |
- #
- # tksrc/Makefile.in --
- #
- # Makefile to build a wish with Extended Tcl (wishx).
- #
- #------------------------------------------------------------------------------
- # Copyright 1992-1993 Karl Lehenbauer and Mark Diekhans.
- #
- # Permission to use, copy, modify, and distribute this software and its
- # documentation for any purpose and without fee is hereby granted, provided
- # that the above copyright notice appear in all copies. Karl Lehenbauer and
- # Mark Diekhans make no representations about the suitability of this
- # software for any purpose. It is provided "as is" without express or
- # implied warranty.
- #------------------------------------------------------------------------------
- # $Id: Makefile.in,v 3.2 1993/12/02 03:56:12 markd Exp $
- #------------------------------------------------------------------------------
- #
- SHELL = /bin/sh
-
- #------------------------------------------------------------------------------
- # Autoconfig defines that can be overridden in Config.mk
-
- CC = @CC@
- RANLIB = @RANLIB@
- MCS = @MCS_CMD@
- srcdir = @srcdir@
- srcbasedir = @srcbasedir@
- bldbasedir = @bldbasedir@
- VPATH = @srcdir@
- prefix = /usr/local
- exec_prefix = /usr/local
- ARCH = @TCL_ARCH@
- XINCLUDES = @XINCLUDES@
- LIBS = @LIBS@
- XLIBSW = @XLIBSW@
-
- #------------------------------------------------------------------------------
- # Include user-editable defines.
-
- @MAKEINCLUDE@ @MAKEQUOTE@${bldbasedir}/Config.mk@MAKEQUOTE@
-
- #------------------------------------------------------------------------------
-
- LIBTK.A = ${bldbasedir}/tkmaster/lib${ARCH}/libtk.a
- LIBTKX.A = ${bldbasedir}/tkmaster/lib${ARCH}/libtkx.a
- WISHX = ${bldbasedir}/tkmaster/bin${ARCH}/wishx
- APPINIT = ${bldbasedir}/tkmaster/src/tkXAppInit.c
- SYSLIBS = ${bldbasedir}/tkmaster/src/SYSLIBS${ARCH}
- TKXMAINPP.O = ${bldbasedir}/tkmaster/lib${ARCH}/tkXmain++.o
-
- LIBTCL.A = ${bldbasedir}/tclmaster/lib${ARCH}/libtcl.a
- LIBTCLX.A = ${bldbasedir}/tclmaster/lib${ARCH}/libtclx.a
-
- # The ordering of the libraries is important. Some X libs on SysV include
- # "random" in a BSD module. This would conflict with the one in the Tcl
- # library if it was brought in.
-
- LDLIBS = ${LIBTKX.A} ${LIBTK.A} ${XLIBSW} ${LIBTCLX.A} ${LIBTCL.A} -lm ${LIBS}
-
- CC_FLAGS = ${CPPFLAGS} ${XCFLAGS} ${CFLAGS} \
- -I${srcbasedir}/src -I${bldbasedir}/src -I${srcbasedir}/tksrc \
- -I${TK_UCB_SRC} -I${TCL_UCB_SRC} ${XINCLUDES}
-
- .c.o:
- ${CC} ${CC_FLAGS} -c $<
-
- #------------------------------------------------------------------------------
-
- OBJS=tkXinit.o tkXmain.o tkXshell.o tkXdata.o
-
- UCBOBJS=tkWindow.o
-
- #------------------------------------------------------------------------------
- # Compile the TkX library and link wishx. If the link fails, purge
- # the executable, as some systems leave invalid executables around.
-
- all: made.tmp ${WISHX} ${APPINIT} ${SYSLIBS} ${TCL_PLUS_BUILD}
-
- ${WISHX}: tkXAppInit.o ${LIBTKX.A} ${LIBTK.A} ${LIBTCLX.A} ${LIBTCL.A} made.tmp
- ${CC} ${CC_FLAGS} ${XLDFLAGS} tkXAppInit.o ${LDLIBS} ${XLDLIBS} \
- -o ${WISHX} || (rm -f ${WISHX}; exit 1)
- if ${DO_STRIPPING} ; then \
- strip ${WISHX} ;\
- ${MCS} ${WISHX} ;\
- else \
- exit 0 ;\
- fi
-
- made.tmp ${LIBTKX.A}: ${OBJS} ${UCBOBJS}
- ${AR} cr ${LIBTKX.A} ${OBJS} ${UCBOBJS}
- ${RANLIB} ${LIBTKX.A}
- touch made.tmp
-
- tkWindow.o: tkWindow.c
- MASTER=${TK_MASTERDIR}/`../tools/tkxversion` ;\
- ${CC} -c -I${TK_UCB_SRC} ${CC_FLAGS} ${DEFS} \
- -DTK_LIBRARY=\"$$MASTER\" tkWindow.c
-
- tkWindow.c: ${TK_UCB_SRC}/tkWindow.c
- rm -f tkWindow.c
- echo '#include "tclXconfig.h"' >tkWindow.c
- cat ${TK_UCB_SRC}/tkWindow.c >>tkWindow.c
-
- tkXinit.o: tkXinit.c
- MASTER=${TK_MASTERDIR}/`../tools/tkxversion` ;\
- ${CC} -c ${CC_FLAGS} -DTK_MASTERDIR=\"$$MASTERDIR\" \
- ${srcdir}/tkXinit.c
-
- ${APPINIT}: tkXAppInit.c
- rm -f ${APPINIT}
- cp ${srcdir}/tkXAppInit.c ${APPINIT}
-
- ${SYSLIBS}: SYSLIBS
- rm -f ${SYSLIBS}
- cp SYSLIBS ${SYSLIBS}
-
- #------------------------------------------------------------------------------
- # Make sure tkXmain.c compiles and links with C++.
-
- TCL_PLUS: wishx++ ${TKXMAINPP.O}
-
- wishx++: tkXmain++.o made.tmp
- ${CC} ${CC_FLAGS} ${XLDFLAGS} tkXAppInit.o ${LDLIBS} ${XLDLIBS} \
- -o wishx++ || (rm -f wishx++; exit 1)
-
- tkXmain++.o: tkXmain++.C
- ${CCPLUS} -c -I${CPLUSINCL} ${CC_FLAGS} tkXmain++.C
-
- tkXmain++.C: tkXmain.c
- rm -f tkXmain++.C
- cp ${srcdir}/tkXmain.c tkXmain++.C
-
- ${TKXMAINPP.O}: tkXmain++.o
- rm -f ${TKXMAINPP.O}
- cp tkXmain++.o ${TKXMAINPP.O}
-
- #------------------------------------------------------------------------------
- clean:
- -rm -f made.tmp tkXmain++.C tkXAppInit.o tkWindow.c
- -rm -f ${OBJS} ${UCBOBJS} tkXmain++.o ${WISHX} wishx++
-
- #------------------------------------------------------------------------------
- # Restore to the distributed state.
-
- distclean: clean
- rm -f Makefile SYSLIBS
-